package com.xyz.service;

import com.xyz.dto.SelectPageTaskDto;
import com.xyz.dto.SelectPageTempDto;
import com.xyz.dto.TemplatePlanDto;
import com.xyz.dto.UpkeepTemplateTaskDto;
import com.xyz.util.dto.DataResult;
import com.xyz.util.dto.LoginInfo;

public interface TemplatePlanService {

    DataResult getTemplatePlanAll(LoginInfo loginInfo, SelectPageTempDto selectPageTempDto) throws Exception;

    DataResult getTemplatePlanById(LoginInfo loginInfo, String id) throws Exception;

    DataResult getTemplatePlanTaskById(LoginInfo loginInfo, String id) throws Exception;

    DataResult getTemplatePartById(LoginInfo loginInfo, String id) throws Exception;

    DataResult getTemplatePlanTask(LoginInfo loginInfo, SelectPageTaskDto selectPageTaskDto) throws Exception;

    DataResult insertTemplatePlan(LoginInfo loginInfo, TemplatePlanDto templatePlanDto) throws Exception;

    DataResult updateTemplatePlan(LoginInfo loginInfo, TemplatePlanDto templatePlanDto) throws Exception;

    DataResult updateTemplateTask(LoginInfo loginInfo, String id, String taskIds) throws Exception;

    DataResult updateTemplatePart(LoginInfo loginInfo, String id, String partList) throws Exception;

    DataResult updateTemplateState(LoginInfo loginInfo, String id, String state) throws Exception;

    DataResult templateBindingEquipment(LoginInfo loginInfo, String emId, String mainTemplateIds, String inspTemplateIds) throws Exception;

    DataResult templateBindingEquipmentInsp(LoginInfo loginInfo, String emId, String mainTemplateIds, String inspTemplateList) throws Exception;

    DataResult getTemplateBindingEquipment(LoginInfo loginInfo, String emId) throws Exception;

    //查询维保计划配置
    DataResult selectUpkeepTemplateTask(LoginInfo loginInfo, String emId) throws Exception;

    //保存维保计划配置
    DataResult insertUpkeepTemplateTask(LoginInfo li, UpkeepTemplateTaskDto upkeepTemplateTaskDto) throws Exception;

    DataResult getUpkeepTemplateTaskById(LoginInfo li, long id) throws Exception;

    DataResult updateUpkeepTemplateTask(LoginInfo li, UpkeepTemplateTaskDto upkeepTemplateTaskDto) throws Exception;

    DataResult deleteUpkeepTemplateTask(LoginInfo li, Long id) throws Exception;

    DataResult updateUpkeepTemplateTaskState(LoginInfo li, long id, int state) throws Exception;


}
